package vo{
	import enum.EigenschaftEnum;
	
	import mx.collections.ArrayCollection;
	
[Bindable]
 [RemoteClass(alias="de.hda.vo.VOKunde")]
 
	public class VOKunde {
	
		public var id:int;
		public var voFiliale:VOFiliale;
		public var vorname:String;
		public var nachname:String;
		public var geburtsdatum:Date;
		public var wohnort:String;
		public var blz:int;
		public var kontonr:int;
		public var kartenname:String;
		public var sessionid:int;
		public var kategorien:String;
		public var praeferenzen:String = "";		
		public var alWarenkorbs:ArrayCollection = new ArrayCollection();
		public var alEigenschafts:ArrayCollection = new ArrayCollection();		
		public var alKundeHatRezepts:ArrayCollection = new ArrayCollection();			
		public var eigenschaften:String = "";
		public var tagid:String;
		
		public function VOKunde() {
			super()
		}
	
		public function setValues():void{
				
			if(alEigenschafts != null){
				for (var i : int = 0; i < alEigenschafts.length; i++) {
					if(eigenschaften == "" && alEigenschafts[i].kategorie != EigenschaftEnum.PRAEFERENZ){
						eigenschaften = alEigenschafts[i].bezeichnung;
					}else if(eigenschaften != "" && alEigenschafts[i].kategorie != EigenschaftEnum.PRAEFERENZ){
						eigenschaften += ", " + alEigenschafts[i].bezeichnung;
					}

				}
				for (var j : int = 0; j < alEigenschafts.length; j++) {
					if(praeferenzen == "" && alEigenschafts[j].kategorie == EigenschaftEnum.PRAEFERENZ){
						praeferenzen = alEigenschafts[j].bezeichnung;
					}else if(praeferenzen != "" && alEigenschafts[j].kategorie == EigenschaftEnum.PRAEFERENZ){
						praeferenzen += ", " + alEigenschafts[j].bezeichnung;
					}
				}
			}
		}
	
		public function getAusgewaehlteRezepte():ArrayCollection {
			
			var alausgewaehlte:ArrayCollection = new ArrayCollection();
			for (var i : int = 0; i < alKundeHatRezepts.length; i++) {
				if(alKundeHatRezepts[i].ausgewaehlt == true){
					alKundeHatRezepts[i].voRezept.setValues();
					alausgewaehlte.addItem(alKundeHatRezepts[i].voRezept);
				}
			}
			
			return alausgewaehlte;
		}
	
		public function getAktiveArtikelAusWarenkorb():ArrayCollection {
			
			var alaktive:ArrayCollection = new ArrayCollection();
			for (var i : int = 0; i < alWarenkorbs.length; i++) {
				if(alWarenkorbs[i].aktiv == true){
					alaktive.addItem(alWarenkorbs[i]);
				}
			}
			return alaktive;
		}
	}
}
